---
title: 手動インストール
description: Holloを手動でインストールする方法を説明します。
---

import { Aside } from "@astrojs/starlight/components";

Holloは手動でインストールすることもできます。
このマニュアルでは、Holloを手動でインストールする手順を説明します。
ただし、すでにウェブアプリケーションの運用経験があり、コマンドラインに慣れていることを前提としています。

<Aside type="tip">
  もし、Unix系システムに慣れていないか、
  Holloをもっと自動化された方法でデプロイしたい場合、[Railway]を使えば、
  数回のクリックでHolloをデプロイすることができます。

  [Railway]: /ja/install/railway
</Aside>


前提条件
--------

始める前に、サーバーに以下のソフトウェアがインストールされていることを確認してください：

 -  [Git]
 -  [Node.js] 24+
 -  [pnpm]
 -  [ffmpeg]
 -  [PostgreSQL] 17+
 - L7ロードバランサー（例：[nginx]、[Caddy]）
 - あなたのサーバーを指しているドメイン名

[Git]: https://git-scm.com/
[Node.js]: https://nodejs.org/
[pnpm]: https://pnpm.io/
[ffmpeg]: https://www.ffmpeg.org/
[PostgreSQL]: https://www.postgresql.org/
[nginx]: https://nginx.org/
[Caddy]: https://caddyserver.com/


インストール
------------

import { Steps } from "@astrojs/starlight/components";

<Steps>
 1. Hollonの最新コードを[GitHub]から取得します：

    ~~~~ sh frame="none"
    git clone -b stable https://github.com/fedify-dev/hollo.git
    cd hollo/
    ~~~~

 2. pnpmで依存関係をインストールします：

    ~~~~ sh frame="none"
    pnpm install
    ~~~~

 3. HolloのためにPostgreSQLユーザーとデータベースを作成します：

    ~~~~ sh frame="none"
    createuser --createdb --pwprompt hollo
    createdb --username=hollo --encoding=utf8 --template=postgres hollo
    ~~~~

 4. Holloの設定ファイルを作成します：

    ~~~~ sh frame="none"
    cp .env.sample .env
    ~~~~

[GitHub]: https://github.com/fedify-dev/hollo
</Steps>


設定
----

Holloをインストールしたら、設定を行う必要があります。
先に作った*.env*ファイルを開いて環境変数の値を適切に変更してください。

[**環境変数**](/ja/install/env)の章でより詳しい内容を確認することができます。


サーバー起動
------------

サーバーを起動する準備が整ったら、以下のコマンドを実行します：

~~~~ sh frame="none"
pnpm run prod
~~~~


アップデート
------------

Holloをアップデートするには、
GitHubリポジトリから最新のコードを取得し、依存関係を再インストールするだけです。

<Steps>
 1. GitHubリポジトリから最新のHolloコードを取得します：

    ~~~~ sh frame="none"
    git pull
    ~~~~

 2. pnpmで依存関係を再インストールします：

    ~~~~ sh frame="none"
    pnpm install
    ~~~~

 3. サーバーを再起動します：

    ~~~~ sh frame="none"
    pnpm run prod
    ~~~~
</Steps>
